/******************************************************************************
 * @file       platetableabstractmodel.cpp
 * @brief      反应版表格数据Model
 *****************************************************************************/
#include "platetableabstractmodel.h"

PlateTableAbstractModel::PlateTableAbstractModel(QObject *parent)
    : QAbstractTableModel(parent)
{}

PlateTableAbstractModel::~PlateTableAbstractModel()
{}

/**
 * @brief qml类型注册
 */
void PlateTableAbstractModel::declareQML()
{
    qmlRegisterType<PlateTableAbstractModel>("PlateTableAbstractModel", 1, 0, "PlateModel");
}


void PlateTableAbstractModel::classBegin()
{
    qDebug()<<"EasyTableModel::classBegin()";
}

void PlateTableAbstractModel::componentComplete()
{
    qDebug()<<"EasyTableModel::componentComplete()";
    // _completed=true;
    // if(!_initData.isEmpty()){
    //     loadData(_initData);
    // }
}


/**
 * @brief 获取表头数据
 * @param section 标题下表
 * @param orientation 表头方向
 * @param role 角色信息
 * @return 表头信息
 */
QVariant PlateTableAbstractModel::headerData(int section,
                                             Qt::Orientation orientation,
                                             int role) const
{
    // FIXME: Implement me!
    return QVariant();
}

/**
 * @brief 获取行数
 * @param parent
 * @return 行数
 */
int PlateTableAbstractModel::rowCount(const QModelIndex &parent) const
{
    if (parent.isValid()) return 0;

    // FIXME: Implement me!
}

/**
 * @brief 获取列数
 * @param parent
 * @return 列数
 */
int PlateTableAbstractModel::columnCount(const QModelIndex &parent) const
{
    if (parent.isValid())
        return 0;

    // FIXME: Implement me!
}

/**
 * @brief 获取指定数据
 * @param index 所选数据下标
 * @param role 角色
 * @return 数据
 */
QVariant PlateTableAbstractModel::data(const QModelIndex &index, int role) const
{
    if (!index.isValid())
        return QVariant();

    // FIXME: Implement me!
    return QVariant();
}

/**
 * @brief 设置指定索引的数据项的值
 * @param index 指定索引
 * @param value 值
 * @param role 角色
 * @return 是否设置成功
 */
bool PlateTableAbstractModel::setData(const QModelIndex &index, const QVariant &value, int role)
{
    if(index.isValid() && role == Qt::EditRole){
        // 插入数据

        return true;
    }
    return false;
}
